Moving Picture Experts Group-Dynamic Adaptive Streaming over HTTP (hereinafter, referred to as “DASH”) (MPEG-DASH) using the same HTTP as browsing of a web site as an internationally standardized moving image delivery protocol available for moving image delivery via the Internet has been known (for example, see Non-Patent Literature 1).
In DASH, an adaptive streaming technique is implemented. In other words, a content supply side is configured to prepare a plurality of streams that include content of the same subject and differ in a bit rate according to a difference in image quality, an angle of view size, or the like. On the other hand, the reception side can select an optimal stream among the plurality of streams prepared by the supply side according to a communication environment of the Internet, a decoding capability of the reception side, or the like and acquire and reproduce the selected optimal stream.
Further, a metafile called a media presentation description (MPD) is supplied from the supply side to the reception side so that the reception side can adaptively select and acquire a stream.
An address (url information) of a server (a supply source) that supplies streaming data (media data such as audio/video/subtitles) of content divided into chunks to the reception side is described in the MPD. The reception side can access a server serving as a content supply source based on the url information, request streaming data, and receive and reproduce streaming data HTTP-unicast-delivered from the server according to the request.
FIG. 1 illustrates an example of a configuration of a content supply system that delivers content in a streaming manner based on the DASH.
A content supply system 10 includes a plurality of content supply devices 20 that supply content and a plurality of DASH clients 30 that receive and reproduce content. The DASH client 30 can be connected to the content supply device 20 via a content delivery network (CDN) 12 using the Internet 11.
The content supply device 20 delivers a plurality of streams that include content of the same subject and differ in a bit rate. The content supply device 20 includes a channel streamer 21, a DASH segment streamer 22, and a DASH MPD server 23.
The channel streamer 21 manages source data of content to be delivered to the DASH client 30, generates a plurality of pieces of streaming data having different bit rates from the source data, and outputs the plurality of pieces of streaming data to the DASH segment streamer 22.
The DASH segment streamer 22 generates, for example, segment streams such as a fragmented MP4 by temporally dividing each piece of streaming data into segments, and holds the generated segment streams as files. Further, the DASH segment streamer 22 HTTP-unicast-delivers the file of the held segment stream to a request source in response to a request (a HTTP request) from the DASH client 30 as a web server. The DASH segment streamer 22 notifies the DASH MPD server 23 of metadata including an address indicating the supply source of the file of the segment stream.
The DASH MPD server 23 generates the MPD in which, for example, the address indicating the supply source (that is, the DASH segment streamer 22) of the file of the segment stream is described. The DASH MPD server 23 HTTP-unicast-delivers the generated MPD to the request source according to the request (the HTTP request) from the DASH client 30 as the web server.
The DASH client 30 request the DASH MPD server 23 to transmit the MPD, and receives the MPD that is HTTP-unicast-delivered in response to the request. The DASH client 30 requests the DASH segment streamer 22 to transmit the file of the segment stream based on the received MPD, and receives and reproduces the file of the segment stream that is HTTP-unicast-delivered in response to the request.
The CDN 12 includes a cache server (not illustrated), and the cache server caches the MPD or the file of the segment stream that is HTTP-unicast-delivered via the CDN 12. The cache server can HTTP-unicast-deliver the cached MPD or the file of the segment stream to the DASH client 30 of the request source instead of the DASH MPD server 23 serving as the web server or the DASH segment streamer 22.